package com.study.design.model.createPattern.singleton;

/**
* @Name: Singleton04
* @Description: 单例模式实现方式四：静态内部类实现
* 特点：
* 	1、线程安全
* 		获取类的实例化对象时，加载的是静态内部类，且类的实例是static final类型的，保证了线程安全；
* 	2、延迟加载，懒加载
* 		需要时才调用getInstance()方法，实现了懒加载；
* 	3、效率高
* 		无需同步，提高了调用效率。
* @Author: 李超	lc_jack@foxmail.com
* @CreateDate: 2017-2-9 下午7:47:52 
* @Version: V1.0
 */
public class Singleton04 {
	
	//创建静态内部类：内部定义实例化对象常量
	private static class SingletonInstance {
		private static final Singleton04 instance = new Singleton04() ;
	}
	
	//构造方法私有化
	private Singleton04() {}
	
	/**
	* @Name: getInstance
	* @Description: 获取实例化对象
	* @Author: 李超	lc_jack@foxmail.com
	* @Version: V1.0
	* @CreateDate: 2017-2-9 下午7:50:02
	* @Parameters: @return
	* @Return: Singleton04
	 */
	public static Singleton04 getInstance() {
		return SingletonInstance.instance ;
	}

}
